<?php
/**
 * This file is part of webman.
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the MIT-LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @author    walkor<walkor@workerman.net>
 * @copyright walkor<walkor@workerman.net>
 * @link      http://www.workerman.net/
 * @license   http://www.opensource.org/licenses/mit-license.php MIT License
 */

ini_set('display_errors', 'on');

require_once __DIR__ . '/vendor/autoload.php';

use Webman\Config;
use Workerman\Worker;

// Initialize config.
Config::load(config_path(), ['route']);

// Autoload.
foreach (config('autoload.files', []) as $file) {
    include_once $file;
}

// App.
$app = new \Webman\App(
    config('app.request_class', \support\Request::class),
    \support\Log::channel('default'),
    app_path(),
    public_path()
);

$worker = new Worker(config('server.listen'), config('server.context', []));
$worker->name = config('server.name', 'webman');

// Worker settings.
foreach (config('server.settings', []) as $key => $value) {
    $worker->{$key} = $value;
}

$worker->onWorkerStart = function ($worker) {
    // App init.
    // $app->init(); // This is removed.
};

Worker::runAll(); 